package com.dcm.item.service.impl;


import com.dcm.common.constant.Constants;
import com.dcm.common.exception.MyException;

import com.dcm.item.dto.UserBillDto;
import com.dcm.item.entity.UserBillEntity;
import com.dcm.item.mapper.UserBillMapper;
import com.dcm.item.service.UserBillService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.List;

/**
 * @author: liutaoran
 * @date: 2021-03-30 19:01
 */
@Service
public class UserBillServiceImpl implements UserBillService {

    @Autowired
    private UserBillMapper userBillMapper;


    @Override
    public List<UserBillEntity> findAll() {

        return userBillMapper.findAll();
    }

    @Override
    public List<UserBillEntity> findTime(String startTime, String endTime) {
 //判断时间
        DateFormat df=new SimpleDateFormat("yyyy-MM-dd hh-mm-ss");
        //DateFormat是抽象类 ，抽象类不可以直接创建对象，所以我们创建子类的对象
        try {
            java.util.Date d1=df.parse(startTime);
            java.util.Date d2=df.parse(endTime);
            if (d1.getTime() > d2.getTime()) {
                //开始时间不能大于结束时间
                throw  new MyException(Constants.UserBillErroMsg.TIME);
            }
        } catch (Exception e) {
            e.printStackTrace();//为啥抛出异常的  不是随便的字符串都可以可以转化为日期吗的
        }
        return userBillMapper.findTime(startTime,endTime);
    }

    @Override
    public List<UserBillDto> findNotes() {
        return userBillMapper.findNotes();
    }

    @Override
    public int findGetSumNumber() {
        return userBillMapper.findGetSumNumber();
    }

    @Override
    public int findSetSumNumber() {
        return userBillMapper.findSetSumNumber();
    }
}
